package com.ruoyi.huoxingshi.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 短剧选集对象 hxs_episodes
 *
 * @author huoxingshi
 * @date 2025-06-27
 */
public class HxsEpisodes extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 选集ID */
    private Long id;

    /** 短剧ID */
    @Excel(name = "短剧ID")
    private Integer dramaId;

    /** 第几集 */
    @Excel(name = "第几集")
    private Long episodeNumber;

    /** 单集标题 */
    @Excel(name = "单集标题")
    private String title;

    /** 视频地址 */
    @Excel(name = "视频地址")
    private String videoUrl;

    /** 单集时长(秒) */
    @Excel(name = "单集时长(秒)")
    private Integer duration;

    /** 免费试看(秒) */
    @Excel(name = "免费试看(秒)")
    private Integer freeDuration;

    /** 是否免费 */
    @Excel(name = "是否免费")
    private String isFree;

    /** 单集解锁价格 */
    @Excel(name = "单集解锁价格")
    private BigDecimal unlockPrice;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }

    public void setDramaId(Integer dramaId)
    {
        this.dramaId = dramaId;
    }

    public Integer getDramaId()
    {
        return dramaId;
    }

    public void setEpisodeNumber(Long episodeNumber)
    {
        this.episodeNumber = episodeNumber;
    }

    public Long getEpisodeNumber()
    {
        return episodeNumber;
    }

    public void setTitle(String title)
    {
        this.title = title;
    }

    public String getTitle()
    {
        return title;
    }

    public void setVideoUrl(String videoUrl)
    {
        this.videoUrl = videoUrl;
    }

    public String getVideoUrl()
    {
        return videoUrl;
    }

    public void setDuration(Integer duration)
    {
        this.duration = duration;
    }

    public Integer getDuration()
    {
        return duration;
    }

    public void setFreeDuration(Integer freeDuration)
    {
        this.freeDuration = freeDuration;
    }

    public Integer getFreeDuration()
    {
        return freeDuration;
    }

    public void setIsFree(String isFree)
    {
        this.isFree = isFree;
    }

    public String getIsFree()
    {
        return isFree;
    }

    public void setUnlockPrice(BigDecimal unlockPrice)
    {
        this.unlockPrice = unlockPrice;
    }

    public BigDecimal getUnlockPrice()
    {
        return unlockPrice;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("dramaId", getDramaId())
                .append("episodeNumber", getEpisodeNumber())
                .append("title", getTitle())
                .append("videoUrl", getVideoUrl())
                .append("duration", getDuration())
                .append("freeDuration", getFreeDuration())
                .append("isFree", getIsFree())
                .append("unlockPrice", getUnlockPrice())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}
